/**
 * \file CPontComptableFrm.h
 * \author Corentin Le Bail
 * \date 2009-2012
 * \brief Fichier de déclaration de la class CPontComptableFrm
 */
//------------------------------------------------------------------------------
#ifndef __CPONTCOMPTABLEFRM_H__
#define __CPONTCOMPTABLEFRM_H__
//------------------------------------------------------------------------------
#include "CMyMainWindow.h"
#include "ui_CPontComptableFrm.h"
#include "CGlobal.h"
#include "CPontComptable.h"
//------------------------------------------------------------------------------
/**
 * \class CPontComptableFrm CPontComptableFrm.h "CPontComptableFrm.h"
 * \brief Classe de la fenêtre des ponts comptable.
 */
class CPontComptableFrm : public CMyMainWindow, private Ui::PontComptableFrm {
	Q_OBJECT
	public:
		/**
		 * \fn CPontComptableFrm(QString name, QWidget *parent = 0)
		 * \brief Constructeur
		 * \param[in] name Nom de l'objet
		 * \param[in] parent Référence vers un objet parent
		 */
		CPontComptableFrm(QString name, QWidget *parent = 0);
	private:
		enum {cpnId, cpnFactureJusquAu, cpnCreation, cpnCreateur, cpnSupression, cpnDestructeur} EColPontNames;
		
		CGlobal::EAction actionCur;
		QFlags<Qt::ItemFlag> defaultFlag;
		
		void setActionCur(CGlobal::EAction action);
		CGlobal::EAction getActionCur(void);
		void closeEvent(QCloseEvent * event);
		void chargeDonnees(void);
		void createGrille(void);
	private slots:
		void on_actAjouter_triggered(void);
		void on_actValider_triggered(void);
		void on_actAnnuler_triggered(void);
		void on_actSupprimer_triggered(void);
		void on_listPont_beforeInsert(const QSqlQuery *query, CMyTableWidgetItem *item);
		void on_listPont_cellDoubleClicked(int row, int column);
		void on_listPont_currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn);
};
//------------------------------------------------------------------------------
#endif //__CPONTCOMPTABLEFRM_H__
//------------------------------------------------------------------------------